package edu.yzu.testspringboot002.config.handler;

import cn.hutool.core.codec.Base64;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.symmetric.AES;
import cn.hutool.crypto.symmetric.DES;

import java.nio.charset.Charset;

/**
 * 简单 加解密
 *
 * @author x1ao
 */
public class PwdUtil {

    static DES des = SecureUtil.des();
    static AES aes = SecureUtil.aes();

    static Charset cs = CharsetUtil.CHARSET_UTF_8;

    public static String desEncode(String str) {
        return StrUtil.str(des.encrypt(str), cs);
    }

    public static String desDecode(String str) {
        return StrUtil.str(des.decrypt(str), cs);
    }

    public static String aesEncode(String str) {
        return StrUtil.str(aes.encrypt(str), cs);
    }

    public static String aesDecode(String str) {
        return StrUtil.str(aes.decrypt(str), cs);
    }

    public static String base64Encode(String str) {
        return Base64.encode(str, cs);
    }

    public static String base64Decode(String str) {
        return Base64.decodeStr(str, cs);
    }

}
